#include "kbdmini.h"
#include "config.h"
const is31_led g_is31_leds[DRIVER_LED_TOTAL] = {
    {0, B_9,   A_9,   C_9}, //LA33
    {0, B_10,  A_10,  C_10}, //LA37
    {0, B_11,  A_11,  C_11}, //LA41
    {0, B_12,  A_12,  C_12}, //LA45
    {0, B_13,  A_13,  C_13}, //LA49
    {0, B_14,  A_14,  C_14}, //LA53
    {0, B_15,  A_15,  C_15}, //LA57
    {0, B_6,   A_6,   C_6}, //LA21
    {0, B_5,   A_5,   C_5}, //LA17
    {0, B_4,   A_4,   C_4}, //LA13
    {0, B_3,   A_3,   C_3}, //LA9
    {0, B_2,   A_2,   C_2}, //LA5
    {0, B_1,   A_1,   C_1}, //LA1

    {0, E_9,   D_9,   F_9}, //LA34
    {0, E_10,  D_10,  F_10}, //LA38
    {0, E_11,  D_11,  F_11}, //LA42
    {0, E_12,  D_12,  F_12}, //LA46
    {0, E_13,  D_13,  F_13}, //LA50
    {0, E_14,  D_14,  F_14}, //LA54
    {0, E_15,  D_15,  F_15}, //LA58
    {0, E_6,   D_6,   F_6}, //LA22
    {0, E_5,   D_5,   F_5}, //LA18
    {0, E_4,   D_4,   F_4}, //LA14
    {0, E_3,   D_3,   F_3}, //LA10
    {0, E_2,   D_2,   F_2}, //LA6
    {0, E_1,   D_1,   F_1}, //LA2

    {0, H_9,   G_9,   I_9}, //LA35
    {0, H_10,  G_10,  I_10}, //LA39
    {0, H_11,  G_11,  I_11}, //LA43
    {0, H_12,  G_12,  I_12}, //LA47
    {0, H_13,  G_13,  I_13}, //LA51
    {0, H_14,  G_14,  I_14}, //LA55
    {0, H_15,  G_15,  I_15}, //LA59
    {0, H_6,   G_6,   I_6}, //LA23
    {0, H_5,   G_5,   I_5}, //LA19
    {0, H_4,   G_4,   I_4}, //LA15
    {0, H_3,   G_3,   I_3}, //LA11
    {0, H_2,   G_2,   I_2}, //LA7
    {0, H_1,   G_1,   I_1}, //LA3

    {0, K_9,   J_9,   L_9}, //LA36
    {0, K_10,  J_10,  L_10}, //LA40
    {0, K_11,  J_11,  L_11}, //LA44
    {0, K_12,  J_12,  L_12}, //LA48
    {0, K_13,  J_13,  L_13}, //LA52
    {0, K_14,  J_14,  L_14}, //LA56
    {0, K_15,  J_15,  L_15}, //LA60
    {0, K_6,   J_6,   L_6}, //LA24
    {0, K_5,   J_5,   L_5}, //LA20
    {0, K_4,   J_4,   L_4}, //LA16
    {0, K_3,   J_3,   L_3}, //LA12
    {0, K_2,   J_2,   L_2}, //LA8
    {0, K_1,   J_1,   L_1}//LA4
};

led_config_t g_led_config = { {
    {  0,   1,   2,   3,   4,   5,   6,   7,   8,   9,   10,  11,  12},
    {  13,  14,  15,  16,  17,  18,  19,  20,  21,  22,  23,  24,  25},
    {  26,  27,  28,  29,  30,  31,  32,  33,  34,  35,  36,  37,  38},
    {  39,  40,  41,  42,  43,  44,  45,  46,  47,  48,  49,  50,  51}
}, { 
    { 0,   0   }, { 19,   0 },  { 38,   0 },  { 57,   0 },  { 76,   0 },  { 95,   0 },  { 114,   0 },  {  133,   0 },  {  152,   0 },  {  171,   0 },  {  190,   0 },  {  209,   0 },  {  224,   0 }, 
    { 0,   21  }, { 19,   21 }, { 38,   21 }, { 57,   21 }, { 76,   21 }, { 95,   21 }, { 114,   21 }, {  133,   21 }, {  152,   21 }, {  171,   21 }, {  190,   21 }, {  209,   21 }, {  224,   21 }, 
    { 0,   42  }, { 19,   42 }, { 38,   42 }, { 57,   42 }, { 76,   42 }, { 95,   42 }, { 114,   42 }, {  133,   42 }, {  152,   42 }, {  171,   42 }, {  190,   42 }, {  209,   42 }, {  224,   42 }, 
    { 0,   64  }, { 19,   64 }, { 38,   64 }, { 57,   64 }, { 76,   64 }, { 95,   64 }, { 114,   64 }, {  133,   64 }, {  152,   64 }, {  171,   64 }, {  190,   64 }, {  209,   64 }, {  224,   64 }
}, {
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
    1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
    1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
} };
void matrix_init_kb(void) {
    matrix_init_user();
}
void matrix_scan_kb(void) {
    matrix_scan_user();
}
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
    return process_record_user(keycode, record);
}
void suspend_power_down_kb(void)
{
    rgb_matrix_set_suspend_state(true);
    suspend_power_down_user();
}

void suspend_wakeup_init_kb(void)
{
    rgb_matrix_set_suspend_state(false);
    suspend_wakeup_init_user();
}
